package org.jeecg.modules.carLedger.entity;

import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import com.fasterxml.jackson.annotation.JsonFormat;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors;
import org.jeecg.common.aspect.annotation.Dict;
import org.jeecgframework.poi.excel.annotation.Excel;
import org.springframework.format.annotation.DateTimeFormat;

import java.io.Serializable;

/**
 * @Description: 进出厂车辆电子台账
 * @Author: jeecg-boot
 * @Date:   2024-07-23
 * @Version: V1.0
 */
@Data
@TableName("car_ledger")
@Accessors(chain = true)
@EqualsAndHashCode(callSuper = false)
@ApiModel(value="car_ledger对象", description="进出厂车辆电子台账")
public class LedgerExportVO implements Serializable {
    private static final long serialVersionUID = 1L;

	/**主键*/
	@TableId(type = IdType.ASSIGN_ID)
    @ApiModelProperty(value = "主键")
    private String id;
	/**创建人*/
    @ApiModelProperty(value = "创建人")
    private String createBy;
	/**创建日期*/
	@JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd HH:mm:ss")
    @DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss")
    @ApiModelProperty(value = "创建日期")
    private java.util.Date createTime;
	/**更新人*/
    @ApiModelProperty(value = "更新人")
    private String updateBy;
	/**更新日期*/
	@JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd HH:mm:ss")
    @DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss")
    @ApiModelProperty(value = "更新日期")
    private java.util.Date updateTime;
	/**所属部门*/
    @ApiModelProperty(value = "所属部门")
    private String sysOrgCode;
	/**出入口编号*/
	@Excel(name = "出入口编号", width = 15)
    @ApiModelProperty(value = "出入口编号")
    private String gateNumber;
    /**进厂道闸*/
    @Excel(name = "进厂道闸", width = 15)
    @ApiModelProperty(value = "进厂道闸")
    private String entryBarrierGate;
    /**出厂道闸*/
    @Excel(name = "出厂道闸", width = 15)
    @ApiModelProperty(value = "出厂道闸")
    private String exitBarrierGate;
	/**进厂时间*/
	@Excel(name = "进厂时间", width = 20, format = "yyyy-MM-dd HH:mm:ss")
	@JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd HH:mm:ss")
    @DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss")
    @ApiModelProperty(value = "进厂时间")
    private java.util.Date entryTime;
	/**出厂时间*/
	@Excel(name = "出厂时间", width = 20, format = "yyyy-MM-dd HH:mm:ss")
	@JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd HH:mm:ss")
    @DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss")
    @ApiModelProperty(value = "出厂时间")
    private java.util.Date exitTime;
	/**车牌号码*/
	@Excel(name = "车牌号码", width = 15)
    @ApiModelProperty(value = "车牌号码")
    private String plateNo;
	/**号牌颜色*/
	@Excel(name = "号牌颜色", width = 15, dicCode = "plate_color")
	@Dict(dicCode = "plate_color")
    @ApiModelProperty(value = "号牌颜色")
    private String plateColor;
	/**车辆类型*/
	@Excel(name = "车辆类型", width = 15, dicCode = "car_type")
	@Dict(dicCode = "car_type")
    @ApiModelProperty(value = "车辆类型")
    private String carType;
    /**车辆生产日期*/
    @Excel(name = "车辆生产日期", width = 15, format = "yyyy-MM-dd")
    @JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd")
    @DateTimeFormat(pattern="yyyy-MM-dd")
    @ApiModelProperty(value = "车辆生产日期")
    private java.util.Date producedTime;
	/**注册登记日期*/
	@Excel(name = "注册登记日期", width = 15, format = "yyyy-MM-dd")
	@JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd")
    @DateTimeFormat(pattern="yyyy-MM-dd")
    @ApiModelProperty(value = "注册登记日期")
    private java.util.Date registerDate;
	/**车辆识别代码（VIN）*/
	@Excel(name = "车辆识别代码（VIN）", width = 15)
    @ApiModelProperty(value = "车辆识别代码（VIN）")
    private String vin;
    /**发动机号*/
    @Excel(name = "发动机号", width = 15)
    @ApiModelProperty(value = "发动机号")
    private String engineNum;
	/**车辆品牌型号*/
	@Excel(name = "车辆品牌型号", width = 15)
    @ApiModelProperty(value = "车辆品牌型号")
    private String carBrandModel;
	/**燃料类型*/
	@Excel(name = "燃料类型", width = 15, dicCode = "fuel_type")
	@Dict(dicCode = "fuel_type")
    @ApiModelProperty(value = "燃料类型")
    private String fuelType;
	/**排放标准*/
	@Excel(name = "排放标准", width = 15, dicCode = "evn_type")
	@Dict(dicCode = "evn_type")
    @ApiModelProperty(value = "排放标准")
    private String evnType;
	/**联网状态*/
	@Excel(name = "联网状态", width = 15, dicCode = "networking_status")
	@Dict(dicCode = "networking_status")
    @ApiModelProperty(value = "联网状态")
    private String networkingStatus;
	/**使用性质*/
	@Excel(name = "使用性质", width = 15, dicCode = "function")
	@Dict(dicCode = "function")
    @ApiModelProperty(value = "使用性质")
    private String function;
    /**运输状态*/
    @Excel(name = "运输状态", width = 15, dicCode = "transport_status")
    @Dict(dicCode = "transport_status")
    @ApiModelProperty(value = "运输状态")
    private Integer transportStatus;
    /**运输货物名称*/
    @Excel(name = "运输货物名称", width = 15)
    @ApiModelProperty(value = "运输货物名称")
    private String goods;
    /**运输量*/
    @Excel(name = "运输量", width = 15)
    @ApiModelProperty(value = "运输量")
    private java.math.BigDecimal freightVolume;
	/**进厂运输货物名称*/
	@Excel(name = "进厂运输货物名称", width = 15)
    @ApiModelProperty(value = "进厂运输货物名称")
    private String inTransportGoods;
	/**进厂运输量*/
	@Excel(name = "入厂重量", width = 15)
    @ApiModelProperty(value = "进厂运输量")
    private java.math.BigDecimal inFreightVolume;
	/**出厂运输货物名称*/
	@Excel(name = "出厂运输货物名称", width = 15)
    @ApiModelProperty(value = "出厂运输货物名称")
    private String outTransportGoods;
	/**出厂运输量*/
	@Excel(name = "出厂重量", width = 15)
    @ApiModelProperty(value = "出厂运输量")
    private java.math.BigDecimal outFreightVolume;
	/**车队名称*/
	@Excel(name = "车队名称", width = 15)
    @ApiModelProperty(value = "车队名称")
    private String fleet;
	/**进厂照片*/
	@Excel(name = "进厂照片", width = 15, type = 2, imageType = 4)
    @ApiModelProperty(value = "进厂照片")
    private String entryPic;
	/**出厂照片*/
	@Excel(name = "出厂照片", width = 15, type = 2, imageType = 4)
    @ApiModelProperty(value = "出厂照片")
    private String exitPic;
	/**环保清单*/
	@Excel(name = "环保清单", width = 15, type = 2, imageType = 4)
    @ApiModelProperty(value = "环保清单")
    private String inventory;
	/**行驶证*/
	@Excel(name = "行驶证", width = 15, type = 2, imageType = 4)
    @ApiModelProperty(value = "行驶证")
    private String license;
    /**报到位置*/
    @Excel(name = "报到位置", width = 15)
    @ApiModelProperty(value = "报到位置")
    private String location;
    /**引领型企业*/
    @Excel(name = "引领型企业", width = 15)
    @ApiModelProperty(value = "引领型企业")
    private Integer leadingEnterprise;
    /**入厂高点抓拍*/
    @Excel(name = "入厂高点抓拍", width = 15, type = 2, imageType = 4)
    @ApiModelProperty(value = "入厂高点抓拍")
    private String entryHighPic;
    /**出厂高点抓拍*/
    @Excel(name = "出厂高点抓拍", width = 15, type = 2, imageType = 4)
    @ApiModelProperty(value = "出厂高点抓拍")
    private String exitHighPic;
    /**抬杆方式*/
    @Excel(name = "抬杆方式", width = 15)
    @ApiModelProperty(value = "抬杆方式")
    private String liftRodMode;
    /**运输货物类型*/
    @Excel(name = "运输货物类型", width = 15, dicCode = "transport_good_type")
    @Dict(dicCode = "transport_good_type")
    @ApiModelProperty(value = "运输货物类型")
    private String transportGoodType;
    /**净重*/
    @Excel(name = "净重", width = 15)
    @ApiModelProperty(value = "净重")
    private String netWeight;
}
